package com.mazaiting.screen.util

import android.content.Context
import android.graphics.Point
import android.util.DisplayMetrics
import android.view.WindowManager

/***
 *
 *
 *                                                    __----~~~~~~~~~~~------___
 *                                   .  .   ~~//====......          __--~ ~~
 *                   -.            \_|//     |||\\  ~~~~~~::::... /~
 *                ___-==_       _-~o~  \/    |||  \\            _/~~-
 *        __---~~~.==~||\=_    -_--~/_-~|-   |\\   \\        _/~
 *    _-~~     .=~    |  \\-_    '-~7  /-   /  ||    \      /
 *  .~       .~       |   \\ -_    /  /-   /   ||      \   /
 * /  ____  /         |     \\ ~-_/  /|- _/   .||       \ /
 * |~~    ~~|--~~~~--_ \     ~==-/   | \~--===~~        .\
 *          '         ~-|      /|    |-~\~~       __--~~
 *                      |-~~-_/ |    |   ~\_   _-~            /\
 *                           /  \     \__   \/~                \__
 *                       _--~ _/ | .-~~____--~-/                  ~~==.
 *                      ((->/~   '.|||' -_|    ~~-/ ,              . _||
 *                                 -_     ~\      ~~---l__i__i__i--~~_/
 *                                 _-~-__   ~)  \--______________--~~
 *                               //.-~~~-~_--~- |-------~~~~~~~~
 *                                      //.-~~~--\
 *                               神兽保佑
 *                              代码无BUG!
 * @author mazaiting
 * @date 2019-07-22
 * @description 屏幕工具类
 */
class ScreenUtil {

    companion object {
        /**
         * 获取显示宽高
         * @param context 上下文
         * @return 宽高
         */
        fun getDisplay(context: Context): Point {
            // 获取窗口管理者
            val windowManager = context.getSystemService(Context.WINDOW_SERVICE) as WindowManager
            // 获取默认尺寸
            val point = Point()
            windowManager.defaultDisplay.getSize(point)
            return point
        }

        /**
         * 获取 dpi
         * @param context 上下文
         * @return DPI
         */
        fun getDensityDpi(context: Context): Int {
            // 获取窗口管理者
            val windowManager = context.getSystemService(Context.WINDOW_SERVICE) as WindowManager
            val metrics = DisplayMetrics()
            // 获取 dpi
            windowManager.defaultDisplay.getMetrics(metrics)
            return metrics.densityDpi
        }

    }

}